Network operators utilize various service functions in the delivery of services to end users. Some examples of service functions include firewalls (FWs), network address translations (NATs), server load balancers (LBs), wide area network (WAN) optimizations, and other open system interconnection (OSI) layer 4 (L4) to layer 7 (L7) services. The L4 to L7 services are commonly located at a centralized location, such as a data center (DC) gateway. In order to apply the L4 to L7 services, data-forwarding directs data traffic to traverse through the DC gateway. Thus, the DC gateway may experience a high volume of traffic.
Service chaining is a service function deployment model that leverages network functions virtualization (NFV) and software defined networking (SDN) technologies to steer data traffic of a data flow through a sequence of services according to a policy configured for the data flow instead of through a centralized location. NFV enables the migration of services from dedicated hardware to software and/or virtual machines (VMs). SDN enables the separation of control and forwarding functions and a software programmable control plane. For example, services may be implemented as software components, moved out of the centralized location, and instantiated at multiple locations in the network by employing NFV. Data flows may be steered through the service instance locations by employing the SDN model, where a network controller may configure network nodes with data-forwarding instructions.